package com.kpf.springcloud.service;

import com.kpf.springcloud.pojo.KpfUser;
import com.kpf.springcloud.pojo.PageResult;
import com.kpf.springcloud.vo.KpfUserTopicListVO;

import java.util.List;

/**
 * @author shiwen
 * @date 2021/2/16
 */
public interface IKpfUserService extends IBaseService<KpfUser> {

    /**
     * 获取所有用户信息
     */
    List<KpfUser> queryAll();

    List<KpfUser> queryAll_mp();

    /**
     * 注册新用户
     */
    boolean registerUser(Long age, String phone, String address, String username, String password);

    /**
     * 登录接口
     *
     * @param phone
     * @param password
     * @return
     */
    KpfUser login(String phone, String password);

    /**
     * 修改个人资料
     */
    boolean modifySelfInfo(String headimg, String username, String phone, String password, String address);

    /**
     * 用户id
     */
    KpfUser getLoginUserById();

    /**
     * 设置用户id到redis
     *
     * @param userId
     */
    void setSelfUserId(int userId);

    /**
     * 根据userId获取user对象
     */
    KpfUserTopicListVO getByUserId();

    /**
     * 获取用户列表
     *
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageResult userList(int pageNum, int pageSize);

    /**
     * 根据用户id删除用户对象
     *
     * @param userId
     */
    void deleteUserById(int userId);

}